Skip to content

JGS 迭代法

JGS 迭代法是 Jacobi 迭代法的一种改进方法,虽然 Jacobi 迭代法的迭代公式 x(k+1)=BJx(k)+gJ 看起来可以一步就解出 x(k+1),但是在实际计算中,还是需要一个一个地解方程。

JGS 迭代法的改进之处在于,它在每次迭代中每解一个方程,就代入更新后的变量来计算下一个方程,这样可以加快迭代的收敛速度。

迭代公式

这里省略方程式推导过程

方程式写起来比较麻烦,原理是先解出方程组中的一个方程,然后用已有的解来更新下一个方程中的系数,以此类推,这样就可以逐个解出所有的变量。

从推导后的方程式可以看出,JGS 迭代法的迭代矩阵本身没变,只是对角线以下的部分(B1)与新的 x(k+1) 相乘,对角线以上的部分(B2)与旧的 x(k) 相乘。因此就有下面的 JGS 迭代公式

和 Jacobi 迭代法类似,由

  • 系数矩阵 A

    [a11a12a1na21a22a2nan1an2ann]
    由系数矩阵 A 可以拆开得到...
    • 下三角矩阵 L[0a210an1an20]
    • 上三角矩阵 U[0a12a1n0a2n0]
    • 对角矩阵 D[a11a22ann]

    注意

    此处的 LU矩阵的 LU 分解 中的 LU 不是同个概念!

  • 常数向量 b

    [b1b2bn]

可以得出

  • 迭代矩阵 BJ=D1(L+U)

    [0a12a11a1na11a21a220a2na22an1annan2ann0]

    其中:

    B1=D1L=[0a21a220an1annan2ann0]B2=D1U=[0a12a11a1na110a2na220]
  • 迭代常数向量 gJ=D1b

    [b1a11b2a22bnann]

因此,由上述推导过程,JGS 迭代法的迭代公式是

x(k+1)=B1x(k+1)+B2x(k)+gJ

等效为简单迭代法

JGS 迭代法的迭代公式 x(k+1)=B1x(k+1)+B2x(k)+gJ 并不能直接等效为简单迭代法 x=Bx+g 的形式,因为等式的左右两边都有 x(k+1)

因此,代入 B1=D1LB2=D1U 并整理等式,将 x(k+1) 移到左边,得到:

x(k+1)=(D+L)1Ux(k)+(D+L)1b

即,

迭代矩阵 BJGS

BJGS=(D+L)1U

迭代向量 gJGS

gJGS=(D+L)1b

JGS 迭代法等效为简单迭代法的迭代公式 为:

x(k+1)=BJGSx(k)+gJGS

收敛性判断

充分条件

满足以下条件之一,JGS 迭代法对任意初始向量一定收敛:

  1. 原系数矩阵 A 严格对角占优
  2. 原系数矩阵 A 对称正定
  3. 迭代矩阵 BJGS 的任一种 矩阵范数 1

充要条件

迭代矩阵 BJGS 的谱半径 <1

与 Jacobi 迭代法收敛性的关系

除非原系数矩阵 A 严格对角占优,否则 JGS 迭代法的收敛性与 Jacobi 迭代法无必然联系